package com.usefullc.english.vo;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.usefullc.common.domain.BaseDomain;
import com.usefullc.english.domain.WordDict;
import com.usefullc.system.service.component.extend.ApiField;
import com.usefullc.system.service.component.extend.DictField;
import com.usefullc.system.service.component.extend.EnumField;
import com.usefullc.system.service.component.extend.UsefulField;
import com.usefullc.system.service.component.extend.ApiField;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.math.BigDecimal;
import java.util.*;

/**
 * 词典返回实体
 * @author: 星空
 * @date: 2022-08-11
 */
@Data
public class WordDictVo extends BaseDomain {

//useful_auto_generate_section_start

    
    @ApiModelProperty(notes = "ID")
    private Long id;

    
    @ApiModelProperty(notes = "删除状态")
    private Boolean delState;

    
    @ApiModelProperty(notes = "名称")
    private String name;

    
    @ApiModelProperty(notes = "美国音标")
    private String usPhoneticSymbol;

    
    @ApiModelProperty(notes = "英国音标")
    private String ukPhoneticSymbol;

    
    @ApiModelProperty(notes = "美国发音")
    private String usPronunciation;

    
    @ApiModelProperty(notes = "英国发音")
    private String ukPronunciation;

    
    @ApiModelProperty(notes = "等级标签")
    private String levelTags;

    
    @ApiModelProperty(notes = "名词")
    private String noun;

    
    @ApiModelProperty(notes = "代词")
    private String pron;

    
    @ApiModelProperty(notes = "形容词")
    private String adj;

    
    @ApiModelProperty(notes = "副词")
    private String adv;

    
    @ApiModelProperty(notes = "动词")
    private String verb;

    
    @ApiModelProperty(notes = "数词")
    private String num;

    
    @ApiModelProperty(notes = "冠词")
    private String art;

    
    @ApiModelProperty(notes = "介词")
    private String prep;

    
    @ApiModelProperty(notes = "连词")
    private String conj;

    
    @ApiModelProperty(notes = "感叹词")
    private String interj;

    
    @ApiModelProperty(notes = "名词复数")
    private String nounPlural;

    
    @ApiModelProperty(notes = "第三人称单数")
    private String thirdSingle;

    
    @ApiModelProperty(notes = "现在分词")
    private String participle;

    
    @ApiModelProperty(notes = "过去式")
    private String pastTense;

    
    @ApiModelProperty(notes = "过去分词")
    private String pastParticiple;

    @UsefulField(format = "yyyy-MM-dd")
    @ApiModelProperty(notes = "创建时间")
    private Date gmtCreate;

    @UsefulField(format = "yyyy-MM-dd")
    @ApiModelProperty(notes = "修改时间")
    private Date gmtModified;

    @EnumField(value = "wordDictTypeEnum")
    @ApiModelProperty(notes = "类型")
    private Integer type;

    
    @ApiModelProperty(notes = "缩写")
    private String abbr;

    
    @ApiModelProperty(notes = "助动词")
    private String aux;

    
    @ApiModelProperty(notes = "其他注释")
    private String otherComment;

    
    @ApiModelProperty(notes = "比较级")
    private String comparative;

    
    @ApiModelProperty(notes = "最高级")
    private String superlative;

    
    @ApiModelProperty(notes = "限定词")
    private String det;


//useful_auto_generate_section_end

    @ApiModelProperty(notes = "词性集合")
    private Map<String,String> wordFeatureMap = new LinkedHashMap<>();

//    @ApiModelProperty(notes = "时态列表")
//    private List<String> wordTenseList = new ArrayList<>();

    @ApiModelProperty(notes = "等级列表")
    private List<String> levels = new ArrayList<>();

    @ApiModelProperty(notes = "是否收藏")
    private Boolean collect;

//    @ApiModelProperty(notes = "是否有结构变化")
//    private Boolean structureChange;

}
